<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:jw="http://jw.nju.edu.cn/schema">
	<xsl:key use="concat(@课程编号,'_',@成绩性质)" name="courseScoreKey"
		match="jw:课程成绩"></xsl:key>
	<xsl:template match="/">
		<课程成绩列表 xmlns="http://jw.nju.edu.cn/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
			xsi:schemaLocation="http://jw.nju.edu.cn/schema ScoreList.xsd">
			<xsl:for-each
				select="//jw:课程成绩[generate-id()=generate-id(key('courseScoreKey',concat(@课程编号,'_',@成绩性质))[1])]">
				<xsl:element name="课程成绩">
					<xsl:attribute name="成绩性质">
					<xsl:value-of select="@成绩性质"></xsl:value-of>
				</xsl:attribute>
					<xsl:attribute name="课程编号">
					<xsl:value-of select="@课程编号"></xsl:value-of>
				</xsl:attribute>
					<xsl:variable name="type" select="@成绩性质"></xsl:variable>
					<xsl:variable name="courseId" select="@课程编号"></xsl:variable>
					<xsl:for-each select="//jw:课程成绩[@成绩性质=$type and @课程编号=$courseId]">
						<xsl:sort data-type="number" select="jw:成绩/jw:得分" order="descending"></xsl:sort>
						<xsl:element name="成绩">
							<xsl:element name="学号">
								<xsl:value-of select="jw:成绩/jw:学号"></xsl:value-of>
							</xsl:element>
							<xsl:element name="得分">
								<xsl:value-of select="jw:成绩/jw:得分"></xsl:value-of>
							</xsl:element>
						</xsl:element>
					</xsl:for-each>
				</xsl:element>
			</xsl:for-each>
		</课程成绩列表>
	</xsl:template>
</xsl:stylesheet>